System and methods for disseminating real time information

ABSTRACT

A system and method for real time dissemination of information is provided. One server receives and data bases the information while another server disseminates the information; instead of one server receiving the information, data basing the information, and dissemination the information to all users requesting the information.

RELATED APPLICATIONS

This application is a continuation of and claims priority to and thebenefit of U.S. patent application Ser. No. 09/736,707, filed on Dec.12, 2000, titled “System and Methods for Disseminating Real TimeInformation,” incorporated herein by reference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of The Invention

The present invention generally relates to data processing.Particularly, the present invention relates to a system and methods fordisseminating information.

2. Description of the Related Art

It has long been recognized that accesses to timely informationregarding current conditions in various commodities and financialmarkets are essential to profitable trading and investment. Many complexinvestment strategies require precise and careful timing of specifictransactions in response to fluctuating market conditions. This isparticularly true in today's fast-moving markets where the ability torespond quickly to changing market conditions may mean the differencebetween substantial profits or devastating losses. Many investors relyheavily on real-time stock quotes when implementing their investmentstrategies, and most of those investors get their real-time stock quotesfrom a brokerage company. Thus, a successful brokerage company must beable to provide stock quotes as accurately and efficiently as possible.

Stock quotes are currently provided by stock exchanges, such as New YorkStock Exchange, NASDAQ, etc., to a field vender such as Bloomberg orComstock. After parsing the stock quote information received from thestock exchanges, the field vender then sends the stock quote informationto a quote server at a rate of about 1,000 to 2,000 packets per second.The quote server is typically located at a regional brokerage officesuch as TradeCast or Merrill Lynch. The quote server has a database andkeeps track of the history of each specific stock quote. If the stockquote is not in the database, the quote server adds the stock quote tothe database. If the stock quote is already in the database, then thequote server updates the database. Next, the quote server checks to seeif a registered user has requested that particular stock quote. Mostbrokerage companies use a subscription based system. If one workstationor trader registers a particular stock quote, then every time the tickor quote comes in, the trader gets an update on that stock quote. Ifnumerous customers are requesting a stock quote at the same time, thenthe quote server will take some time to send the requested stock quotesto all the requesting customers. If the quote server spends more timedelivering stock quotes, however, then the quote server must spend lesstime getting stock quotes. Thus, when the above-mentioned response timeto the requesting customers takes too long, the quote server may misssome of the stock quotes sent by the field vender. As a result,investors may not have the most current stock quote information neededto make intelligent trading decisions.

Consequently, it would be desirable to provide an improved method todisseminate the information, e.g., deliver stock quotes, to investors inreal-time.

SUMMARY OF THE INVENTION

In view of the foregoing, embodiments of the present invention providean improved system and method to disseminate the information toinvestors in real-time. According to an embodiment of the presentinvention, a system for disseminating real time information is provided.The system includes a quote server positioned to receive stock quoteinformation from a provider, e.g., field vender, etc., a contact serverpositioned to request a stock quote from the quote server in response tothe stock quote request being requested by a user, means associated withthe quote server and responsive to the stock quote request for sending astock quote to the contact server, and means associated with the contactserver for disseminating the stock quote received from the quote serverto a plurality of users, e.g., trading stations requesting therespective stock quote.

In accordance with this embodiment of the system, quote information froma provider is received by a quote server. In response to a quote requestfrom a user to a contact server, the contact server requests the quoterequest from the quote server. The quote server then sends a respectivequote according to the quote request to the contact server. In turn, thecontact server disseminates the quote to the user and two other usersrequesting the same quote information. By having to send the requestedquote information only once, the quote server is able to spend more timein receiving quote information and less time in distributing the quoteinformation. This can of the quote server readers the amount of timespent delivering stock quotes and help prevent missing stock quotes sentfrom the provider. Advantageously, the addition of the contact server incombination with the quote server enables the system to serve upwards of1,000-2,000 people per combination of the quote and contact server.

According to another embodiment of the present invention, a stockquoting system is provided. The stock quoting system includes a quoteserver positioned to receive stock quote information from a provider,e.g., field vender, etc., a contact server positioned to request a stockquote request from the quote server in response to the stock quoterequest being requested by at least one user, means for sending arespective stock quote according to the stock quote request to thecontact server by the quote server, and means for disseminating by thecontact server the stock quote to a plurality of users, e.g., aplurality of trading stations requesting the respective stock quote.

Methods for disseminating stock quotes in real time are also provided.According to another embodiment of a method, the method includes thesteps of receiving stock quote information from a provider by a quoteserver, and in response to a stock quote request from at least one userto a contact server, the contact server requesting the stock quoterequest from the stock quote server, and sending a respective stockquote according to the stock quote request to the contact server by thequote server. The method also includes the contact server, rather thanthe stock quote server, disseminating the stock quote to a plurality ofusers, e.g., a plurality of trading stations requesting the respectivestock quote.

According to another embodiment of the method of disseminating stockquotes in real time, the method includes generating a plurality of stockquotes from a stock exchange, sending the plurality of stock quotes to afield vender, parsing the plurality of stock quotes, sending theplurality of stock quotes to a quote vender having a quote server at arelatively high rate of speed, and verifying validity of each of theplurality of stock quotes at the quote server. The method can alsoinclude adding a particular stock from the plurality of stock quotes toa database associated with the quote server when the particular stock isnot in the database and updating the database with each of the pluralityof stock quotes when the particular stock from the plurality of stockquotes is in the database. According to embodiment of the method, thequote server can be located, for example, in a regional stock brokerageoffice. Advantageously, the database is adapted to track history of eachof the plurality of stock quotes. The method can also includedetermining when a contact server in communication with the quote serveris requesting a particular stock quote, sending the particular stockquote to the contact server responsive to a request for the particularstock quote, and sending from the contact server the particular stockquote to a plurality of stock traders that each have requested theparticular stock quote. The plurality of stock quotes can be positionedin one or more a data packets. As such, the method can also includemultiplexing the plurality of data packets to the quote server at a rateof about 1,000 data packets per second or greater. As such, the methodcan include the quote server receiving the plurality of data packets ata rate in the range of about 1000-2000 data packets per second.Providing the user data at such a high rate allows users, e.g., stocktraders, to make quick decisions related to the particular stockresponsive to the respective stock trader receiving the particular stockquote.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the features and advantages of theinvention, as well as others which will become apparent, may beunderstood in more detail, a more particular description of theinvention briefly summarized above may be had by reference to theembodiments thereof which are illustrated in the appended drawings,which form a part of this specification. It is to be noted, however,that the drawings illustrate only various embodiments of the inventionand are therefore not to be considered limiting of the invention's scopeas it may include other effective embodiments as well.

FIG. 1 is a block diagram of a stock quoting system according to theprior art;

FIG. 2 is a block diagram of a stock quoting system in accordance withan embodiment of the present invention;

FIG. 3 is a flow chart of a stock quoting system according to the priorart; and

FIG. 4 is a flow chart of a method for delivering stock quotes inreal-time utilizing the stock quoting system in FIG. 2, in accordancewith an embodiment of the present invention.

DETAILED DESCRIPTION

The present invention will now be described more fully hereinafter withreference to the accompanying drawings, which illustrate embodiments ofthe invention. The present invention may, however, be embodied in manydifferent forms and should not be construed as limited to theillustrated embodiments set forth herein. Rather, these embodiments areprovided so that this disclosure will be thorough and complete, and willfully convey the scope of the invention to those skilled in the art.Like numbers refer to like elements throughout. Prime notation, if used,indicates similar elements in alternative embodiments.

FIG. 1 illustrates a block diagram of a stock quoting system accordingto the prior art. As shown, a stock quoting system 10 includes a quoteserver 13 and a database 14. Generally, stock quotes are sent from asource of stock quote 11 to a field vender 12 and then to quote server13. Source of stock quote 11 are typically stock exchanges, such as theNew York Stock Exchange, NASDAQ, etc. Field vender 12 is a tradingvender such as Bloomberg or Comstock. Stock traders can request stockquotes from quote server via trading stations 15 a-15 n. In response toa stock quote request, quote server 13 would send a stock quote to acorresponding one or more of trading stations 15 a-15 n. Because stockquoting system 10 is a closed system, quote server 13 has to finishsending stock quotes to trading stations 15 a-15 n before quote server13 can perform other important functions such as reading data from fieldvender 12. In other words, if quote server 13 spends more timedelivering stock quotes, then quote server 13 has to spend less timeobtaining stock quotes. As a result, quote server 13 may miss a stockquote (or data packet) from field vender 12. Because quote server 13does not have the most current stock quote, database 14 could not beupdated, and a trader would not have the most current stock quoteinformation needed to make intelligent trading decisions.

FIG. 2 illustrates a block diagram of a stock quoting system inaccordance with a preferred embodiment of the present invention. Asshown, a stock quoting system 20 includes a quote server 23, a database24 and a contact server 26. Stock quotes are sent from a source of stockquote 21 to a field vender 22 and then to quote server 23. Source ofstock quote 21 can be an exchange that generates stock quotes similar tosource of stock quote 11 depicted in FIG. 1. Field vender 22 parsers theinformation and multiplexes it to quote server 23 at a rate ofapproximately 1,000-2,000 stock quotes (or packets) per second. Quoteserver 23 can be any type of server capable of receiving andtransmitting information, and can be located in a regional brokerageoffice such as TradeCast or Merrill Lynch. Quote server 23 is coupled todatabase 24 that keeps track of the history of each specific stockquote. If a quote for a particular stock is not in database 24, quoteserver 23 can add the missing stock quote to database 24. If the stockquote is already in database 24, quote server 23 can update database 24with the latest information. Stock traders can request stock quotes fromcontact server 26 via trading stations 25 a-25 n. Contact server 26 maybe, for example, a workstation, a mid-range computer or a mainframecomputer. In addition, contact server 26 may be coupled to a networksuch as a local-area network (LAN) or a wide-area network (WAN). Inresponse to a stock quote request, contact server 26 would send a stockquote to a corresponding one or more of trading stations 25 a-25 n.

FIG. 4 illustrates a flow chart of a method for delivering stock quotesin real-time utilizing stock quoting system 20, in accordance with anembodiment of the present invention. After data has been received by aquote server, as shown in block 31, a determination is made by the quoteserver 23 as to whether or not the received data is a valid packet, asdepicted in block 32. If the received data is a valid packet, thereceived data will be stored in a database coupled to the quote server23, as shown in block 33. Otherwise, the received data will be discardedor ignored. Then, the quote server 23 checks to see if a contact server26 is requesting a particular stock quote, as shown in block 34. If thecontact server 26 is requesting a stock quote, the quote server 23 sendsthe stock quote to the contact server 26, as depicted in block 36. Thecontact server 26 may send the stock quote to all traders 25 a-25 n whohave requested that particular stock quote. If no trader 25 a-25 n hasmade a stock quote request, then the contact server 26 does not requestany stock quote from the quote server 23. By comparison, FIG. 3illustrates a flowchart according to the prior art where hundreds oftraders 15 a-15 n would request a stock quote whereby quote server 13would have to send each trader 15 a-15 n the stock quote, shown in steps34 and 35.

As has been described, the present invention provides an improved methodfor delivering stock quotes in real-time. Because the quote server 23sends a stock quote to the contact server 26 only when a stock quoterequest has been made from a trader 25 a-25 n via the contact server 26,the quote server 23 v is not burdened with the responsibility ofdelivering stock quotes for each stock quote request. As such, the quoteserver 23 can dedicate more processing for receiving new stock quoteinformation from a field vender 22.

It is also important to note that although the present invention hasbeen described in the context of a fully functional computer system,those skilled in the art will appreciate that the mechanisms of thepresent invention are capable of being distributed as a program productin a variety of forms, and that the present invention applies equallyregardless of the particular type of signal bearing media utilized toactually carry out the distribution. Examples of signal bearing mediainclude, without limitation, recordable type media such as floppy disksor CD ROMs or other storage devices known to those skilled in the artincluding transmission type media such as analog or digitalcommunications links.

This application is related to U.S. patent application Ser. No.09/736,707, filed on Dec. 12, 2000, titled “System and Methods forDisseminating Real Time Information,” incorporated herein by referencein its entirety.

In the drawings and specification, there have been disclosed a typicalpreferred embodiment of the invention, and although specific terms areemployed, the terms are used in a descriptive sense only and not forpurposes of limitation. The invention has been described in considerabledetail with specific reference to these illustrated embodiments. It willbe apparent, however, that various modifications and changes can be madewithin the spirit and scope of the invention as described in theforegoing specification and as defined in the attached claims.

1. A method for disseminating stock quotes in real time, the methodcomprising: receiving stock quote information from a provider by a quoteserver; in response to a stock quote request from at least one user to acontact server, the contact server requesting the stock quote requestfrom the stock quote server; sending a respective stock quote accordingto the stock quote request to the contact server by the quote server;and disseminating the stock quote to a plurality of users by the contactserver.
 2. A method as defined in claim 1, wherein the provider is afield vender.
 3. A method as defined in claim 1, wherein the pluralityof users are a corresponding plurality of trading stations requestingthe respective stock quote.
 4. A method as defined in claim 3, furthercomprising determining by the quote server if the contact server isrequesting a particular stock quote.
 5. A method as defined in claim 4,wherein the contact server is a workstation.
 6. A method as defined inclaim 4, wherein a database is associated with the quote server, and themethod further comprises tracking the history of each particular stockquote using the database.
 7. A method as defined in claim 6, furthercomprising: receiving the particular stock quote; determining if theparticular stock quote is in the database; adding the particular stockquote to the database if the particular stock quote is not in thedatabase; and updating the database if the particular stock quote isalready in the database.
 8. A stock quoting system comprising: a quoteserver positioned to receive stock quote information from a provider; acontact server positioned to request a stock quote request from thequote server in response to the stock quote request being requested byat least one user; means for sending a respective stock quote accordingto the stock quote request to the contact server by the quote server;and means for disseminating the stock quote to a plurality of users bythe contact server.
 9. A stock quoting system of claim 8, wherein theprovider is a field vender.
 10. A stock quoting system of claim 8,wherein the contact server is a workstation.
 11. A stock quoting systemas defined in claim 8, wherein the plurality of users are acorresponding plurality of trading stations requesting the respectivestock quote.
 12. A stock quoting system as defined in claim 11, furthercomprising a database associated with the quote server and positioned totrack the history of each particular stock quote, and wherein the quoteserver is further positioned to determine if the particular stock quoteis in the database, add the particular stock quote to the database ifthe particular stock quote is not in the database, and update thedatabase if the particular stock quote is already in the database.
 13. Asystem for disseminating real time information comprising: a quoteserver positioned to receive stock quote information from a provider; acontact server positioned to request a stock quote from the quote serverresponsive to the stock quote request being requested by a user; meansassociated with the quote server and responsive to the stock quoterequest for sending a stock quote to the contact server; and meansassociated with the contact server for disseminating the stock quotereceived from the quote server to a plurality of users.
 14. A system asdefined in claim 13, wherein the provider is a field vender.
 15. Asystem as defined in claim 13, wherein the contact server is aworkstation, and wherein the plurality of users are a correspondingplurality of trading stations.
 16. A system as defined in claim 13,further comprising a database associated with the quote server andpositioned to track the history of each particular stock quote, andwherein the quote server further positioned to determine if theparticular stock quote is in the database, add the particular stockquote to the database if the particular stock quote is not in thedatabase, and update the database if the particular stock quote isalready in the database.
 17. A method of disseminating stock quotes inreal time, the method comprising: generating a plurality of stock quotesfrom a stock exchange; sending the plurality of stock quotes to a fieldvender; parsing the plurality of stock quotes; sending the plurality ofstock quotes to a quote vender at a relatively high rate of speed, thequote vender including a quote server; verifying validity of each of theplurality of stock quotes at the quote server; adding a particular stockfrom the plurality of stock quotes to a database associated with thequote server when the particular stock is not in the database, thedatabase being adapted to track history of each of the plurality ofstock quotes; updating the database with each of the plurality of stockquotes when the particular stock from the plurality of stock quotes isin the database; determining when a contact server in communication withthe quote server is requesting a particular stock quote; sending theparticular stock quote to the contact server responsive to a request forthe particular stock quote; and sending from the contact server theparticular stock quote to a plurality of stock traders that each haverequested the particular stock quote.
 18. A method as defined in claim17, wherein each of the plurality of stock quotes comprises a datapacket, and wherein the method further comprises multiplexing theplurality of data packets to the quote server at a rate of about 1,000data packets per second or greater.
 19. A method as defined in claim 18,wherein the quote server is located in a regional stock brokerageoffice, and wherein the method further comprises the quote serverreceiving the plurality of data packets at a rate in the range of about1000-2000 data packets per second.
 20. A method as defined in claim 19,further comprising making a quick decision related to the particularstock by a stock trader responsive to the stock trader receiving theparticular stock quote.